package com.ssyt.yt1.day14.innerclass.d;

/**
 * <pre>
 * 匿名内部类 
 * 1）new 抽象类/接口() 
 * 2）匿名内部类在访问局部变量里，必须加上final，以防数据被篡改 
 * 3）优点：少定义一个类。缺点：无法重复使用。
 * </pre>
 * 
 * @author Administrator
 *
 */
interface Fruit {

	String getName();
}

class Apple implements Fruit {

	@Override
	public String getName() {
		return "Apple";
	}

}

class Banana implements Fruit {

	@Override
	public String getName() {
		return "Banana";
	}

}

public class InnerClass {

	public static void main(String[] args) {
		// Apple apple6 = new Apple();
		// Apple apple6s = new Apple();
		// System.out.println(apple6s.getName());

		test();
	}

	public static void test() {
		String name = "匿名";

		String fruitName = new Fruit() {

			@Override
			public String getName() {
				// name = "abc";
				return name;
			}

		}.getName();

		System.out.println(fruitName);
	}
}
